<!doctype html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>操作符</title>
	</head>
	<body>
		
	</body>
	<script type="text/javascript">
		// 1、赋值运算符 = 
		// 等号右边的值赋值给等号左边。
		var a = 5; 
		var b = a;
		b = 10;
		console.log(a, b);

		// 对象引用
		var arr1 = [1, 2, 3];
		var arr2 = arr1;
		arr2 = [1, 2, 3];
		arr2.push(666);
		console.log(arr1, arr2);




		// 2、算术运算符 + - * /  ++ --
		// b += a;// b = b + a;
		var a = 10;
		// a = a++; 幺蛾子写法 
		// var a = 10;
		// var b = 5;
		// console.log(a+++b);
		// console.log(a, b);

		// 3、关系运算符 < > >= <= == === != !==
		// 多一个等号就会多一个判断类型的步骤
		console.log(5 != "5")

		// 4、逻辑运算符 
		// && 逻辑与   并且  只有两个条件都满足的时候，结果才为真
		// || 逻辑或   或者
		// ！ 逻辑非    取反
		// 
		// 如果今天晚上媳妇不在家并且身上有钱就可以去通宵
		// 女生：如果这个男生帅(好，老实)或者有钱，我就嫁给他
		console.log(!false)


		// 5、条件运算符
		//   条件?表达式1:表达式2
		//  条件为真，取表达式1的值，条件为假去表达式2的值。
		var a = false ? false ? false ? 1 : 3 : true ? 4 : 7 : false ? true ? 9 : 9 : 43;
		console.log(a);

		// 操作符的优先级
		//  算术 > 关系 > 逻辑 > 赋值
		console.log(a = 4 && false);
		


	</script>
</html>